/**********************************************************************/
/*   ____  ____                                                       */
/*  /   /\/   /                                                       */
/* /___/  \  /                                                        */
/* \   \   \/                                                       */
/*  \   \        Copyright (c) 2003-2009 Xilinx, Inc.                */
/*  /   /          All Right Reserved.                                 */
/* /---/   /\                                                         */
/* \   \  /  \                                                      */
/*  \___\/\___\                                                    */
/***********************************************************************/

/* This file is designed for use with ISim build 0x7708f090 */

#define XSI_HIDE_SYMBOL_SPEC true
#include "xsi.h"
#include <memory.h>
#ifdef __GNUC__
#include <stdlib.h>
#else
#include <malloc.h>
#define alloca _alloca
#endif
static const char *ng0 = "C:/Users/Rohit/Xilinx_workspace/ECE540/Project_2_16bit/proj_2_16bit/ENCRIPTION.v";
static int ng1[] = {0, 0};
static unsigned int ng2[] = {1U, 0U};
static unsigned int ng3[] = {2U, 0U};
static unsigned int ng4[] = {4U, 0U};
static unsigned int ng5[] = {8U, 0U};
static int ng6[] = {1, 0};
static unsigned int ng7[] = {16U, 0U};
static unsigned int ng8[] = {32U, 0U};
static unsigned int ng9[] = {128U, 0U};
static unsigned int ng10[] = {64U, 0U};
static unsigned int ng11[] = {8192U, 0U};
static unsigned int ng12[] = {256U, 0U};
static unsigned int ng13[] = {512U, 0U};
static unsigned int ng14[] = {1024U, 0U};
static unsigned int ng15[] = {2048U, 0U};
static unsigned int ng16[] = {4096U, 0U};
static unsigned int ng17[] = {16384U, 0U};
static unsigned int ng18[] = {32768U, 0U};
static unsigned int ng19[] = {857U, 0U};
static unsigned int ng20[] = {0U, 0U};



static void Always_62_0(char *t0)
{
    char t6[8];
    char *t1;
    char *t2;
    char *t3;
    char *t4;
    char *t5;
    char *t7;
    char *t8;
    unsigned int t9;
    unsigned int t10;
    unsigned int t11;
    unsigned int t12;
    unsigned int t13;
    unsigned int t14;
    unsigned int t15;
    unsigned int t16;
    unsigned int t17;
    unsigned int t18;
    unsigned int t19;
    unsigned int t20;
    char *t21;
    char *t22;
    unsigned int t23;
    unsigned int t24;
    unsigned int t25;
    unsigned int t26;
    unsigned int t27;
    char *t28;
    char *t29;

LAB0:    t1 = (t0 + 7560U);
    t2 = *((char **)t1);
    if (t2 == 0)
        goto LAB2;

LAB3:    goto *t2;

LAB2:    xsi_set_current_line(62, ng0);
    t2 = (t0 + 8376);
    *((int *)t2) = 1;
    t3 = (t0 + 7592);
    *((char **)t3) = t2;
    *((char **)t1) = &&LAB4;

LAB1:    return;
LAB4:    xsi_set_current_line(63, ng0);

LAB5:    xsi_set_current_line(64, ng0);
    t4 = (t0 + 3520U);
    t5 = *((char **)t4);
    t4 = ((char*)((ng1)));
    memset(t6, 0, 8);
    t7 = (t5 + 4);
    t8 = (t4 + 4);
    t9 = *((unsigned int *)t5);
    t10 = *((unsigned int *)t4);
    t11 = (t9 ^ t10);
    t12 = *((unsigned int *)t7);
    t13 = *((unsigned int *)t8);
    t14 = (t12 ^ t13);
    t15 = (t11 | t14);
    t16 = *((unsigned int *)t7);
    t17 = *((unsigned int *)t8);
    t18 = (t16 | t17);
    t19 = (~(t18));
    t20 = (t15 & t19);
    if (t20 != 0)
        goto LAB9;

LAB6:    if (t18 != 0)
        goto LAB8;

LAB7:    *((unsigned int *)t6) = 1;

LAB9:    t22 = (t6 + 4);
    t23 = *((unsigned int *)t22);
    t24 = (~(t23));
    t25 = *((unsigned int *)t6);
    t26 = (t25 & t24);
    t27 = (t26 != 0);
    if (t27 > 0)
        goto LAB10;

LAB11:    xsi_set_current_line(67, ng0);
    t2 = (t0 + 5840);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = (t0 + 5680);
    xsi_vlogvar_wait_assign_value(t5, t4, 0, 0, 16, 0LL);

LAB12:    goto LAB2;

LAB8:    t21 = (t6 + 4);
    *((unsigned int *)t6) = 1;
    *((unsigned int *)t21) = 1;
    goto LAB9;

LAB10:    xsi_set_current_line(65, ng0);
    t28 = ((char*)((ng2)));
    t29 = (t0 + 5680);
    xsi_vlogvar_wait_assign_value(t29, t28, 0, 0, 16, 0LL);
    goto LAB12;

}

static void Always_71_1(char *t0)
{
    char t11[8];
    char *t1;
    char *t2;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    char *t7;
    int t8;
    char *t9;
    char *t10;
    unsigned int t12;
    unsigned int t13;
    unsigned int t14;
    unsigned int t15;
    unsigned int t16;
    unsigned int t17;
    unsigned int t18;
    unsigned int t19;
    unsigned int t20;
    unsigned int t21;
    unsigned int t22;
    unsigned int t23;
    unsigned int t24;
    unsigned int t25;
    unsigned int t26;
    unsigned int t27;
    unsigned int t28;
    char *t29;
    char *t30;
    char *t31;
    char *t32;

LAB0:    t1 = (t0 + 7808U);
    t2 = *((char **)t1);
    if (t2 == 0)
        goto LAB2;

LAB3:    goto *t2;

LAB2:    xsi_set_current_line(71, ng0);
    t2 = (t0 + 8392);
    *((int *)t2) = 1;
    t3 = (t0 + 7840);
    *((char **)t3) = t2;
    *((char **)t1) = &&LAB4;

LAB1:    return;
LAB4:    xsi_set_current_line(72, ng0);

LAB5:    xsi_set_current_line(73, ng0);
    t4 = (t0 + 5680);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);

LAB6:    t7 = ((char*)((ng2)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t7, 16);
    if (t8 == 1)
        goto LAB7;

LAB8:    t2 = ((char*)((ng3)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB9;

LAB10:    t2 = ((char*)((ng4)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB11;

LAB12:    t2 = ((char*)((ng5)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB13;

LAB14:    t2 = ((char*)((ng7)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB15;

LAB16:    t2 = ((char*)((ng8)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB17;

LAB18:    t2 = ((char*)((ng10)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB19;

LAB20:    t2 = ((char*)((ng9)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB21;

LAB22:    t2 = ((char*)((ng12)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB23;

LAB24:    t2 = ((char*)((ng13)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB25;

LAB26:    t2 = ((char*)((ng14)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB27;

LAB28:    t2 = ((char*)((ng15)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB29;

LAB30:    t2 = ((char*)((ng16)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB31;

LAB32:    t2 = ((char*)((ng11)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB33;

LAB34:    t2 = ((char*)((ng17)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB35;

LAB36:    t2 = ((char*)((ng18)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB37;

LAB38:
LAB40:
LAB39:    xsi_set_current_line(156, ng0);

LAB100:    xsi_set_current_line(157, ng0);
    t2 = ((char*)((ng2)));
    t3 = (t0 + 5840);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);

LAB41:    goto LAB2;

LAB7:    xsi_set_current_line(74, ng0);

LAB42:    xsi_set_current_line(75, ng0);
    t9 = ((char*)((ng3)));
    t10 = (t0 + 5840);
    xsi_vlogvar_assign_value(t10, t9, 0, 0, 16);
    goto LAB41;

LAB9:    xsi_set_current_line(78, ng0);

LAB43:    xsi_set_current_line(79, ng0);
    t3 = ((char*)((ng4)));
    t4 = (t0 + 5840);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    goto LAB41;

LAB11:    xsi_set_current_line(82, ng0);

LAB44:    xsi_set_current_line(83, ng0);
    t3 = ((char*)((ng5)));
    t4 = (t0 + 5840);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    goto LAB41;

LAB13:    xsi_set_current_line(86, ng0);

LAB45:    xsi_set_current_line(87, ng0);
    t3 = (t0 + 4160U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng6)));
    memset(t11, 0, 8);
    t5 = (t4 + 4);
    t7 = (t3 + 4);
    t12 = *((unsigned int *)t4);
    t13 = *((unsigned int *)t3);
    t14 = (t12 ^ t13);
    t15 = *((unsigned int *)t5);
    t16 = *((unsigned int *)t7);
    t17 = (t15 ^ t16);
    t18 = (t14 | t17);
    t19 = *((unsigned int *)t5);
    t20 = *((unsigned int *)t7);
    t21 = (t19 | t20);
    t22 = (~(t21));
    t23 = (t18 & t22);
    if (t23 != 0)
        goto LAB49;

LAB46:    if (t21 != 0)
        goto LAB48;

LAB47:    *((unsigned int *)t11) = 1;

LAB49:    t10 = (t11 + 4);
    t24 = *((unsigned int *)t10);
    t25 = (~(t24));
    t26 = *((unsigned int *)t11);
    t27 = (t26 & t25);
    t28 = (t27 != 0);
    if (t28 > 0)
        goto LAB50;

LAB51:    xsi_set_current_line(90, ng0);
    t2 = ((char*)((ng5)));
    t3 = (t0 + 5840);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);

LAB52:    goto LAB41;

LAB15:    xsi_set_current_line(93, ng0);

LAB53:    xsi_set_current_line(94, ng0);
    t3 = ((char*)((ng8)));
    t4 = (t0 + 5840);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    goto LAB41;

LAB17:    xsi_set_current_line(97, ng0);

LAB54:    xsi_set_current_line(98, ng0);
    t3 = (t0 + 4160U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng6)));
    memset(t11, 0, 8);
    t5 = (t4 + 4);
    t7 = (t3 + 4);
    t12 = *((unsigned int *)t4);
    t13 = *((unsigned int *)t3);
    t14 = (t12 ^ t13);
    t15 = *((unsigned int *)t5);
    t16 = *((unsigned int *)t7);
    t17 = (t15 ^ t16);
    t18 = (t14 | t17);
    t19 = *((unsigned int *)t5);
    t20 = *((unsigned int *)t7);
    t21 = (t19 | t20);
    t22 = (~(t21));
    t23 = (t18 & t22);
    if (t23 != 0)
        goto LAB58;

LAB55:    if (t21 != 0)
        goto LAB57;

LAB56:    *((unsigned int *)t11) = 1;

LAB58:    t10 = (t11 + 4);
    t24 = *((unsigned int *)t10);
    t25 = (~(t24));
    t26 = *((unsigned int *)t11);
    t27 = (t26 & t25);
    t28 = (t27 != 0);
    if (t28 > 0)
        goto LAB59;

LAB60:    xsi_set_current_line(101, ng0);
    t2 = ((char*)((ng8)));
    t3 = (t0 + 5840);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);

LAB61:    goto LAB41;

LAB19:    xsi_set_current_line(104, ng0);

LAB62:    xsi_set_current_line(105, ng0);
    t3 = (t0 + 6480);
    t4 = (t3 + 56U);
    t5 = *((char **)t4);
    t7 = ((char*)((ng1)));
    memset(t11, 0, 8);
    t9 = (t5 + 4);
    t10 = (t7 + 4);
    t12 = *((unsigned int *)t5);
    t13 = *((unsigned int *)t7);
    t14 = (t12 ^ t13);
    t15 = *((unsigned int *)t9);
    t16 = *((unsigned int *)t10);
    t17 = (t15 ^ t16);
    t18 = (t14 | t17);
    t19 = *((unsigned int *)t9);
    t20 = *((unsigned int *)t10);
    t21 = (t19 | t20);
    t22 = (~(t21));
    t23 = (t18 & t22);
    if (t23 != 0)
        goto LAB64;

LAB63:    if (t21 != 0)
        goto LAB65;

LAB66:    t30 = (t11 + 4);
    t24 = *((unsigned int *)t30);
    t25 = (~(t24));
    t26 = *((unsigned int *)t11);
    t27 = (t26 & t25);
    t28 = (t27 != 0);
    if (t28 > 0)
        goto LAB67;

LAB68:    xsi_set_current_line(108, ng0);
    t2 = ((char*)((ng11)));
    t3 = (t0 + 5840);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);

LAB69:    goto LAB41;

LAB21:    xsi_set_current_line(111, ng0);

LAB70:    xsi_set_current_line(112, ng0);
    t3 = ((char*)((ng12)));
    t4 = (t0 + 5840);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    goto LAB41;

LAB23:    xsi_set_current_line(115, ng0);

LAB71:    xsi_set_current_line(116, ng0);
    t3 = (t0 + 4160U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng6)));
    memset(t11, 0, 8);
    t5 = (t4 + 4);
    t7 = (t3 + 4);
    t12 = *((unsigned int *)t4);
    t13 = *((unsigned int *)t3);
    t14 = (t12 ^ t13);
    t15 = *((unsigned int *)t5);
    t16 = *((unsigned int *)t7);
    t17 = (t15 ^ t16);
    t18 = (t14 | t17);
    t19 = *((unsigned int *)t5);
    t20 = *((unsigned int *)t7);
    t21 = (t19 | t20);
    t22 = (~(t21));
    t23 = (t18 & t22);
    if (t23 != 0)
        goto LAB75;

LAB72:    if (t21 != 0)
        goto LAB74;

LAB73:    *((unsigned int *)t11) = 1;

LAB75:    t10 = (t11 + 4);
    t24 = *((unsigned int *)t10);
    t25 = (~(t24));
    t26 = *((unsigned int *)t11);
    t27 = (t26 & t25);
    t28 = (t27 != 0);
    if (t28 > 0)
        goto LAB76;

LAB77:    xsi_set_current_line(119, ng0);
    t2 = ((char*)((ng12)));
    t3 = (t0 + 5840);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);

LAB78:    goto LAB41;

LAB25:    xsi_set_current_line(122, ng0);

LAB79:    xsi_set_current_line(123, ng0);
    t3 = ((char*)((ng14)));
    t4 = (t0 + 5840);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    goto LAB41;

LAB27:    xsi_set_current_line(126, ng0);

LAB80:    xsi_set_current_line(127, ng0);
    t3 = (t0 + 4160U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng6)));
    memset(t11, 0, 8);
    t5 = (t4 + 4);
    t7 = (t3 + 4);
    t12 = *((unsigned int *)t4);
    t13 = *((unsigned int *)t3);
    t14 = (t12 ^ t13);
    t15 = *((unsigned int *)t5);
    t16 = *((unsigned int *)t7);
    t17 = (t15 ^ t16);
    t18 = (t14 | t17);
    t19 = *((unsigned int *)t5);
    t20 = *((unsigned int *)t7);
    t21 = (t19 | t20);
    t22 = (~(t21));
    t23 = (t18 & t22);
    if (t23 != 0)
        goto LAB84;

LAB81:    if (t21 != 0)
        goto LAB83;

LAB82:    *((unsigned int *)t11) = 1;

LAB84:    t10 = (t11 + 4);
    t24 = *((unsigned int *)t10);
    t25 = (~(t24));
    t26 = *((unsigned int *)t11);
    t27 = (t26 & t25);
    t28 = (t27 != 0);
    if (t28 > 0)
        goto LAB85;

LAB86:    xsi_set_current_line(130, ng0);
    t2 = ((char*)((ng14)));
    t3 = (t0 + 5840);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);

LAB87:    goto LAB41;

LAB29:    xsi_set_current_line(133, ng0);

LAB88:    xsi_set_current_line(134, ng0);
    t3 = ((char*)((ng16)));
    t4 = (t0 + 5840);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    goto LAB41;

LAB31:    xsi_set_current_line(137, ng0);

LAB89:    xsi_set_current_line(138, ng0);
    t3 = ((char*)((ng10)));
    t4 = (t0 + 5840);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    goto LAB41;

LAB33:    xsi_set_current_line(141, ng0);

LAB90:    xsi_set_current_line(142, ng0);
    t3 = ((char*)((ng17)));
    t4 = (t0 + 5840);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    goto LAB41;

LAB35:    xsi_set_current_line(145, ng0);

LAB91:    xsi_set_current_line(146, ng0);
    t3 = (t0 + 4160U);
    t4 = *((char **)t3);
    t3 = ((char*)((ng6)));
    memset(t11, 0, 8);
    t5 = (t4 + 4);
    t7 = (t3 + 4);
    t12 = *((unsigned int *)t4);
    t13 = *((unsigned int *)t3);
    t14 = (t12 ^ t13);
    t15 = *((unsigned int *)t5);
    t16 = *((unsigned int *)t7);
    t17 = (t15 ^ t16);
    t18 = (t14 | t17);
    t19 = *((unsigned int *)t5);
    t20 = *((unsigned int *)t7);
    t21 = (t19 | t20);
    t22 = (~(t21));
    t23 = (t18 & t22);
    if (t23 != 0)
        goto LAB95;

LAB92:    if (t21 != 0)
        goto LAB94;

LAB93:    *((unsigned int *)t11) = 1;

LAB95:    t10 = (t11 + 4);
    t24 = *((unsigned int *)t10);
    t25 = (~(t24));
    t26 = *((unsigned int *)t11);
    t27 = (t26 & t25);
    t28 = (t27 != 0);
    if (t28 > 0)
        goto LAB96;

LAB97:    xsi_set_current_line(149, ng0);
    t2 = ((char*)((ng17)));
    t3 = (t0 + 5840);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);

LAB98:    goto LAB41;

LAB37:    xsi_set_current_line(152, ng0);

LAB99:    xsi_set_current_line(153, ng0);
    t3 = ((char*)((ng2)));
    t4 = (t0 + 5840);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    goto LAB41;

LAB48:    t9 = (t11 + 4);
    *((unsigned int *)t11) = 1;
    *((unsigned int *)t9) = 1;
    goto LAB49;

LAB50:    xsi_set_current_line(88, ng0);
    t29 = ((char*)((ng7)));
    t30 = (t0 + 5840);
    xsi_vlogvar_assign_value(t30, t29, 0, 0, 16);
    goto LAB52;

LAB57:    t9 = (t11 + 4);
    *((unsigned int *)t11) = 1;
    *((unsigned int *)t9) = 1;
    goto LAB58;

LAB59:    xsi_set_current_line(99, ng0);
    t29 = ((char*)((ng9)));
    t30 = (t0 + 5840);
    xsi_vlogvar_assign_value(t30, t29, 0, 0, 16);
    goto LAB61;

LAB64:    *((unsigned int *)t11) = 1;
    goto LAB66;

LAB65:    t29 = (t11 + 4);
    *((unsigned int *)t11) = 1;
    *((unsigned int *)t29) = 1;
    goto LAB66;

LAB67:    xsi_set_current_line(106, ng0);
    t31 = ((char*)((ng9)));
    t32 = (t0 + 5840);
    xsi_vlogvar_assign_value(t32, t31, 0, 0, 16);
    goto LAB69;

LAB74:    t9 = (t11 + 4);
    *((unsigned int *)t11) = 1;
    *((unsigned int *)t9) = 1;
    goto LAB75;

LAB76:    xsi_set_current_line(117, ng0);
    t29 = ((char*)((ng13)));
    t30 = (t0 + 5840);
    xsi_vlogvar_assign_value(t30, t29, 0, 0, 16);
    goto LAB78;

LAB83:    t9 = (t11 + 4);
    *((unsigned int *)t11) = 1;
    *((unsigned int *)t9) = 1;
    goto LAB84;

LAB85:    xsi_set_current_line(128, ng0);
    t29 = ((char*)((ng15)));
    t30 = (t0 + 5840);
    xsi_vlogvar_assign_value(t30, t29, 0, 0, 16);
    goto LAB87;

LAB94:    t9 = (t11 + 4);
    *((unsigned int *)t11) = 1;
    *((unsigned int *)t9) = 1;
    goto LAB95;

LAB96:    xsi_set_current_line(147, ng0);
    t29 = ((char*)((ng18)));
    t30 = (t0 + 5840);
    xsi_vlogvar_assign_value(t30, t29, 0, 0, 16);
    goto LAB98;

}

static void Always_163_2(char *t0)
{
    char t11[8];
    char t14[8];
    char *t1;
    char *t2;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    char *t7;
    int t8;
    char *t9;
    char *t10;
    char *t12;
    char *t13;
    char *t15;
    char *t16;
    unsigned int t17;
    unsigned int t18;
    unsigned int t19;
    unsigned int t20;
    unsigned int t21;
    unsigned int t22;
    unsigned int t23;
    unsigned int t24;
    unsigned int t25;
    unsigned int t26;
    unsigned int t27;
    unsigned int t28;
    char *t29;
    char *t30;
    unsigned int t31;
    unsigned int t32;
    unsigned int t33;
    unsigned int t34;
    unsigned int t35;
    char *t36;
    char *t37;

LAB0:    t1 = (t0 + 8056U);
    t2 = *((char **)t1);
    if (t2 == 0)
        goto LAB2;

LAB3:    goto *t2;

LAB2:    xsi_set_current_line(163, ng0);
    t2 = (t0 + 8408);
    *((int *)t2) = 1;
    t3 = (t0 + 8088);
    *((char **)t3) = t2;
    *((char **)t1) = &&LAB4;

LAB1:    return;
LAB4:    xsi_set_current_line(164, ng0);

LAB5:    xsi_set_current_line(172, ng0);
    t4 = (t0 + 5680);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);

LAB6:    t7 = ((char*)((ng2)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t7, 16);
    if (t8 == 1)
        goto LAB7;

LAB8:    t2 = ((char*)((ng3)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB9;

LAB10:    t2 = ((char*)((ng4)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB11;

LAB12:    t2 = ((char*)((ng5)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB13;

LAB14:    t2 = ((char*)((ng7)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB15;

LAB16:    t2 = ((char*)((ng8)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB17;

LAB18:    t2 = ((char*)((ng10)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB19;

LAB20:    t2 = ((char*)((ng9)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB21;

LAB22:    t2 = ((char*)((ng12)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB23;

LAB24:    t2 = ((char*)((ng13)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB25;

LAB26:    t2 = ((char*)((ng14)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB27;

LAB28:    t2 = ((char*)((ng15)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB29;

LAB30:    t2 = ((char*)((ng16)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB31;

LAB32:    t2 = ((char*)((ng11)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB33;

LAB34:    t2 = ((char*)((ng17)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB35;

LAB36:    t2 = ((char*)((ng18)));
    t8 = xsi_vlog_unsigned_case_compare(t6, 16, t2, 16);
    if (t8 == 1)
        goto LAB37;

LAB38:
LAB40:
LAB39:    xsi_set_current_line(268, ng0);

LAB66:    xsi_set_current_line(269, ng0);
    t2 = ((char*)((ng1)));
    t3 = (t0 + 5040);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    xsi_set_current_line(270, ng0);
    t2 = ((char*)((ng1)));
    t3 = (t0 + 4880);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);

LAB41:    goto LAB2;

LAB7:    xsi_set_current_line(173, ng0);

LAB42:    xsi_set_current_line(174, ng0);
    t9 = ((char*)((ng1)));
    t10 = (t0 + 4880);
    xsi_vlogvar_assign_value(t10, t9, 0, 0, 1);
    xsi_set_current_line(175, ng0);
    t2 = ((char*)((ng1)));
    t3 = (t0 + 5040);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    goto LAB41;

LAB9:    xsi_set_current_line(178, ng0);

LAB43:    xsi_set_current_line(179, ng0);
    t3 = (t0 + 3840U);
    t4 = *((char **)t3);
    t3 = (t0 + 6480);
    xsi_vlogvar_assign_value(t3, t4, 0, 0, 16);
    xsi_set_current_line(180, ng0);
    t2 = ((char*)((ng1)));
    t3 = (t0 + 4880);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    xsi_set_current_line(181, ng0);
    t2 = ((char*)((ng1)));
    t3 = (t0 + 5040);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    goto LAB41;

LAB11:    xsi_set_current_line(184, ng0);

LAB44:    xsi_set_current_line(185, ng0);
    t3 = ((char*)((ng1)));
    t4 = (t0 + 5040);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 1);
    xsi_set_current_line(186, ng0);
    t2 = ((char*)((ng2)));
    t3 = (t0 + 5200);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);
    xsi_set_current_line(187, ng0);
    t2 = ((char*)((ng19)));
    t3 = (t0 + 6640);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);
    xsi_set_current_line(188, ng0);
    t2 = (t0 + 6640);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = (t0 + 5360);
    xsi_vlogvar_assign_value(t5, t4, 0, 0, 16);
    xsi_set_current_line(189, ng0);
    t2 = (t0 + 4000U);
    t3 = *((char **)t2);
    t2 = (t0 + 5520);
    xsi_vlogvar_assign_value(t2, t3, 0, 0, 16);
    xsi_set_current_line(190, ng0);
    t2 = ((char*)((ng6)));
    t3 = (t0 + 5040);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    goto LAB41;

LAB13:    xsi_set_current_line(193, ng0);

LAB45:    xsi_set_current_line(194, ng0);
    t3 = (t0 + 4320U);
    t4 = *((char **)t3);
    t3 = (t0 + 6000);
    xsi_vlogvar_assign_value(t3, t4, 0, 0, 16);
    goto LAB41;

LAB15:    xsi_set_current_line(197, ng0);

LAB46:    xsi_set_current_line(198, ng0);
    t3 = ((char*)((ng1)));
    t4 = (t0 + 5040);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 1);
    xsi_set_current_line(199, ng0);
    t2 = (t0 + 3680U);
    t3 = *((char **)t2);
    t2 = (t0 + 5200);
    xsi_vlogvar_assign_value(t2, t3, 0, 0, 16);
    xsi_set_current_line(200, ng0);
    t2 = ((char*)((ng19)));
    t3 = (t0 + 6640);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 16);
    xsi_set_current_line(201, ng0);
    t2 = (t0 + 6640);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = (t0 + 5360);
    xsi_vlogvar_assign_value(t5, t4, 0, 0, 16);
    xsi_set_current_line(202, ng0);
    t2 = (t0 + 4000U);
    t3 = *((char **)t2);
    t2 = (t0 + 5520);
    xsi_vlogvar_assign_value(t2, t3, 0, 0, 16);
    xsi_set_current_line(203, ng0);
    t2 = ((char*)((ng6)));
    t3 = (t0 + 5040);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    goto LAB41;

LAB17:    xsi_set_current_line(206, ng0);

LAB47:    xsi_set_current_line(207, ng0);
    t3 = (t0 + 4320U);
    t4 = *((char **)t3);
    t3 = (t0 + 6160);
    xsi_vlogvar_assign_value(t3, t4, 0, 0, 16);
    goto LAB41;

LAB19:    xsi_set_current_line(210, ng0);

LAB48:    xsi_set_current_line(211, ng0);
    t3 = ((char*)((ng1)));
    t4 = (t0 + 5040);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 1);
    xsi_set_current_line(212, ng0);
    t2 = ((char*)((ng1)));
    t3 = (t0 + 4880);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    goto LAB41;

LAB21:    xsi_set_current_line(215, ng0);

LAB49:    xsi_set_current_line(216, ng0);
    t3 = (t0 + 6160);
    t4 = (t3 + 56U);
    t5 = *((char **)t4);
    t7 = (t0 + 5200);
    xsi_vlogvar_assign_value(t7, t5, 0, 0, 16);
    xsi_set_current_line(217, ng0);
    t2 = (t0 + 6160);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = (t0 + 5360);
    xsi_vlogvar_assign_value(t5, t4, 0, 0, 16);
    xsi_set_current_line(218, ng0);
    t2 = (t0 + 4000U);
    t3 = *((char **)t2);
    t2 = (t0 + 5520);
    xsi_vlogvar_assign_value(t2, t3, 0, 0, 16);
    xsi_set_current_line(219, ng0);
    t2 = ((char*)((ng6)));
    t3 = (t0 + 5040);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    goto LAB41;

LAB23:    xsi_set_current_line(222, ng0);

LAB50:    xsi_set_current_line(223, ng0);
    t3 = (t0 + 4320U);
    t4 = *((char **)t3);
    t3 = (t0 + 6320);
    xsi_vlogvar_assign_value(t3, t4, 0, 0, 16);
    goto LAB41;

LAB25:    xsi_set_current_line(226, ng0);

LAB51:    xsi_set_current_line(227, ng0);
    t3 = (t0 + 6480);
    t4 = (t3 + 56U);
    t5 = *((char **)t4);
    t7 = (t0 + 6480);
    t9 = (t7 + 72U);
    t10 = *((char **)t9);
    t12 = ((char*)((ng1)));
    xsi_vlog_generic_get_index_select_value(t11, 32, t5, t10, 2, t12, 32, 1);
    t13 = ((char*)((ng6)));
    memset(t14, 0, 8);
    t15 = (t11 + 4);
    t16 = (t13 + 4);
    t17 = *((unsigned int *)t11);
    t18 = *((unsigned int *)t13);
    t19 = (t17 ^ t18);
    t20 = *((unsigned int *)t15);
    t21 = *((unsigned int *)t16);
    t22 = (t20 ^ t21);
    t23 = (t19 | t22);
    t24 = *((unsigned int *)t15);
    t25 = *((unsigned int *)t16);
    t26 = (t24 | t25);
    t27 = (~(t26));
    t28 = (t23 & t27);
    if (t28 != 0)
        goto LAB55;

LAB52:    if (t26 != 0)
        goto LAB54;

LAB53:    *((unsigned int *)t14) = 1;

LAB55:    t30 = (t14 + 4);
    t31 = *((unsigned int *)t30);
    t32 = (~(t31));
    t33 = *((unsigned int *)t14);
    t34 = (t33 & t32);
    t35 = (t34 != 0);
    if (t35 > 0)
        goto LAB56;

LAB57:
LAB58:    goto LAB41;

LAB27:    xsi_set_current_line(237, ng0);

LAB60:    xsi_set_current_line(238, ng0);
    t3 = (t0 + 4320U);
    t4 = *((char **)t3);
    t3 = (t0 + 6000);
    xsi_vlogvar_assign_value(t3, t4, 0, 0, 16);
    goto LAB41;

LAB29:    xsi_set_current_line(241, ng0);

LAB61:    xsi_set_current_line(242, ng0);
    t3 = ((char*)((ng1)));
    t4 = (t0 + 5040);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 1);
    xsi_set_current_line(243, ng0);
    t2 = (t0 + 6320);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = (t0 + 6160);
    xsi_vlogvar_assign_value(t5, t4, 0, 0, 16);
    goto LAB41;

LAB31:    xsi_set_current_line(246, ng0);

LAB62:    xsi_set_current_line(247, ng0);
    t3 = ((char*)((ng1)));
    t4 = (t0 + 5040);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 1);
    xsi_set_current_line(248, ng0);
    t2 = (t0 + 6480);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    memset(t14, 0, 8);
    t5 = (t14 + 4);
    t7 = (t4 + 4);
    t17 = *((unsigned int *)t4);
    t18 = (t17 >> 1);
    *((unsigned int *)t14) = t18;
    t19 = *((unsigned int *)t7);
    t20 = (t19 >> 1);
    *((unsigned int *)t5) = t20;
    t21 = *((unsigned int *)t14);
    *((unsigned int *)t14) = (t21 & 32767U);
    t22 = *((unsigned int *)t5);
    *((unsigned int *)t5) = (t22 & 32767U);
    t9 = ((char*)((ng20)));
    xsi_vlogtype_concat(t11, 16, 16, 2U, t9, 1, t14, 15);
    t10 = (t0 + 6480);
    xsi_vlogvar_assign_value(t10, t11, 0, 0, 16);
    goto LAB41;

LAB33:    xsi_set_current_line(251, ng0);

LAB63:    xsi_set_current_line(252, ng0);
    t3 = ((char*)((ng2)));
    t4 = (t0 + 5200);
    xsi_vlogvar_assign_value(t4, t3, 0, 0, 16);
    xsi_set_current_line(253, ng0);
    t2 = (t0 + 6000);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = (t0 + 5360);
    xsi_vlogvar_assign_value(t5, t4, 0, 0, 16);
    xsi_set_current_line(254, ng0);
    t2 = (t0 + 4000U);
    t3 = *((char **)t2);
    t2 = (t0 + 5520);
    xsi_vlogvar_assign_value(t2, t3, 0, 0, 16);
    xsi_set_current_line(255, ng0);
    t2 = ((char*)((ng6)));
    t3 = (t0 + 5040);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    goto LAB41;

LAB35:    xsi_set_current_line(258, ng0);

LAB64:    xsi_set_current_line(259, ng0);
    t3 = (t0 + 4320U);
    t4 = *((char **)t3);
    t3 = (t0 + 6000);
    xsi_vlogvar_assign_value(t3, t4, 0, 0, 16);
    goto LAB41;

LAB37:    xsi_set_current_line(262, ng0);

LAB65:    xsi_set_current_line(263, ng0);
    t3 = (t0 + 6000);
    t4 = (t3 + 56U);
    t5 = *((char **)t4);
    t7 = (t0 + 4720);
    xsi_vlogvar_assign_value(t7, t5, 0, 0, 16);
    xsi_set_current_line(264, ng0);
    t2 = ((char*)((ng1)));
    t3 = (t0 + 5040);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    xsi_set_current_line(265, ng0);
    t2 = ((char*)((ng6)));
    t3 = (t0 + 4880);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    goto LAB41;

LAB54:    t29 = (t14 + 4);
    *((unsigned int *)t14) = 1;
    *((unsigned int *)t29) = 1;
    goto LAB55;

LAB56:    xsi_set_current_line(228, ng0);

LAB59:    xsi_set_current_line(229, ng0);
    t36 = ((char*)((ng1)));
    t37 = (t0 + 5040);
    xsi_vlogvar_assign_value(t37, t36, 0, 0, 1);
    xsi_set_current_line(230, ng0);
    t2 = (t0 + 6000);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = (t0 + 5200);
    xsi_vlogvar_assign_value(t5, t4, 0, 0, 16);
    xsi_set_current_line(231, ng0);
    t2 = (t0 + 6160);
    t3 = (t2 + 56U);
    t4 = *((char **)t3);
    t5 = (t0 + 5360);
    xsi_vlogvar_assign_value(t5, t4, 0, 0, 16);
    xsi_set_current_line(232, ng0);
    t2 = (t0 + 4000U);
    t3 = *((char **)t2);
    t2 = (t0 + 5520);
    xsi_vlogvar_assign_value(t2, t3, 0, 0, 16);
    xsi_set_current_line(233, ng0);
    t2 = ((char*)((ng6)));
    t3 = (t0 + 5040);
    xsi_vlogvar_assign_value(t3, t2, 0, 0, 1);
    goto LAB58;

}


extern void work_m_00000000004078526965_4247993110_init()
{
	static char *pe[] = {(void *)Always_62_0,(void *)Always_71_1,(void *)Always_163_2};
	xsi_register_didat("work_m_00000000004078526965_4247993110", "isim/testbench_isim_beh.exe.sim/work/m_00000000004078526965_4247993110.didat");
	xsi_register_executes(pe);
}
